﻿using System;

namespace FBGraph.Web.Security
{
    /// <summary>A container class that is JSON serialized and used to temporarily store information about an authentication request in a cookie.</summary>
    public class AuthRequestData
    {
        /// <summary>The FBGraph.NET-generated identifier that is returned as part of the callback url</summary>
        public Guid RequestID { get; set; }

        /// <summary>The complete redirectUri URI that is sent to the FBGraph OAuth provider as part of the authentication request.</summary>
        public String RedirectUri { get; set; }

        /// <summary>The url that the user is redirected to upon successful authentication.</summary>
        public String ReturnUrl { get; set; }

        /// <summary>The application's Client ID that is sent to the FBGraph OAuth provider.</summary>
        public Int64 ClientID { get; set; }

        /// <summary>The code returned by Facebook's OAuth provider.</summary>
        public String Code { get; set; }

        /// <summary>The set of extended permissions that were requested.</summary>
        public ExtendedPermission? Scope { get; set; }
    }
}